998da2
@@ -197,6 +197,7 @@
public class UriTemplate implements Serializable {
 				if (c == '{') {
 					level++;
 					if (level == 1) {
+						// start of URI variable
 						pattern.append(quote(builder));
 						builder = new StringBuilder();
 						continue;
@@ -205,6 +206,7 @@
public class UriTemplate implements Serializable {
 				else if (c == '}') {
 					level--;
 					if (level == 0) {
+						// end of URI variable
 						String variable = builder.toString();
 						int idx = variable.indexOf(':');
 						if (idx == -1) {
@@ -227,14 +229,11 @@
public class UriTemplate implements Serializable {
 						continue;
 					}
 				}
-				if (i + 1 == uriTemplate.length()) {
-					if (c != '/') {
-						builder.append(c);
-					}
-					pattern.append(quote(builder));
-				}
 				builder.append(c);
 			}
+			if (builder.length() > 0) {
+				pattern.append(quote(builder));
+			}
 			return new TemplateInfo(variableNames, Pattern.compile(pattern.toString()));
 		}
 
